package com.wang.springbootinit.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wang.springbootinit.model.dto.NoticeQueryDTO;
import com.wang.springbootinit.model.entity.Notice;

/**
 * 通知公告服务接口
 * 提供通知的增删改查等基础服务
 */
public interface NoticeService {
    /**
     * 添加通知
     * @param notice 通知信息
     * @return 操作结果
     */
    boolean addNotice(Notice notice);
    
    /**
     * 更新通知
     * @param notice 更新的通知信息
     * @return 操作结果
     */
    boolean updateNotice(Notice notice);
    
    /**
     * 删除通知
     * @param noticeId 通知ID
     * @return 操作结果
     */
    boolean deleteNotice(Long noticeId);
    
    /**
     * 获取通知详情
     * @param noticeId 通知ID
     * @return 通知详情
     */
    Notice getNoticeById(Long noticeId);
    
    /**
     * 分页查询通知列表
     * @param queryDTO 查询参数
     * @return 通知列表
     */
    Page<Notice> getNoticePage(NoticeQueryDTO queryDTO);
}